/*
 * Compresor.h
 *
 *  Created on: 21/06/2010
 *      Author: ignacio
 */

#ifndef COMPRESOR_H_
#define COMPRESOR_H_
#include <stdio.h>

class Compresor {

public:

	static void comprimir(char caracter, unsigned long int frecuenciaCaracter, unsigned long int frecuenciaTotal, unsigned long int frecuenciaAcumulada);

	static int descomprimir();

	static void destruirCompresor();

	int obtenerCaracterDescomprimido();

	void agregarCaracterArchivo(unsigned long int frecuenciaAcumulada);

private:

	Compresor(char* modo);

	~Compresor();

	static const int aritmetico[34];

	int indice;

	static Compresor *instancia;

	FILE* archivoComprimido;


};

#endif /* COMPRESOR_H_ */
